Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lzham: Add cci.20220103 #13646

Merged
merged 3 commits into from
Jan 8, 2023
Merged

Conversation

partiallyderived
Copy link
Contributor

@partiallyderived partiallyderived commented Oct 20, 2022

Specify library name and version: lzham/cci.20220103

Reason for creating PR: I'm working on a project in C++ which will benefit from having great compression and faster decompression, for which I've decided LZHAM is a good library. Resolves #13500

Several patches are applied to make the code more portable. An unofficial release was selected as the only official release is quite old and missing many portability fixes, which would need to be patched in anyway.


  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the conan-center hook activated.

@CLAassistant
Copy link

CLAassistant commented Oct 20, 2022

CLA assistant check
All committers have signed the CLA.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@partiallyderived partiallyderived marked this pull request as ready for review November 9, 2022 01:35
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@partiallyderived partiallyderived marked this pull request as ready for review December 1, 2022 21:44
Copy link
Contributor

@prince-chrismc prince-chrismc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The big "update" patch is a blocker https://github.com/conan-io/conan-center-index/blob/41adf57553fa3ab9088462d390a2c444fdc7f052/docs/adding_packages/sources_and_patches.md#policy-about-patching

I made a few small suggestions as well

This is a really good start!

Comment on lines 7 to 8
- patch_file: "patches/commits-1.0.0.patch"
patch_description: 'Updates code to latest commit for the repo
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oof, this is going to be a very tough sell 🙊
Thats a massive patch....

image


Couple suggestions for you to get this to move forward

  1. Ask upstream to make a new release
  2. Contribute your patches to the project 🙏 this would be amazing for everyone

The other options is we do have "unofficial releases" https://github.com/conan-io/conan-center-index/blob/master/docs/faqs.md#what-version-should-packages-use-for-libraries-without-official-releases and that would be something you could add in addition to the official one

Copy link
Contributor Author

@partiallyderived partiallyderived Dec 17, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first option is ideal and I've made an issue for it. Unfortunately the maintainers are pretty unresponsive so I doubt it will come to pass haha. I think the second option doesn't apply as this code is already part of the upstream, though maybe I misunderstood. I made pull requests for my other patches where they did not already exist.

I think it is likely that I will go for the "unofficial releases" option

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, is it acceptable if I supported only the unofficial release? I ask because it contains many portability fixes, and the official would basically have to be patched to include the fixes anyway if I include it

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it makes sense in this case given how much differences there are

Comment on lines +135 to +137
def generate(self):
if is_msvc(self):
tc = MSBuildToolchain(self)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the review! Part of the reason is that the CMakeLists configure compiler arguments that MSVC does not understand, leading to errors like

cl : command line  error D8021: invalid numeric argument '/Wextra' [C:\Users\Babbo\.conan\data\lzham\1.0.0\_\_\build\5a
61a86bb3e07ce4262c80e1510f9c05e9b6d48b\build\lzhamdecomp\lzhamdecomp.vcxproj]

Another reason is that I suspect that the MSVC project is "fine-tuned" for Windows and it is the recommended way to compile for Windows, so I believe it would be less optimal to make a patch adapt the CMakeLists so that MSVC is handled, not to mention a bit of a pain!

recipes/lzham/all/conanfile.py Outdated Show resolved Hide resolved
recipes/lzham/all/conanfile.py Outdated Show resolved Hide resolved
@conan-center-bot

This comment has been minimized.

@partiallyderived partiallyderived requested review from prince-chrismc and removed request for franramirez688 and uilianries December 20, 2022 15:19
@partiallyderived partiallyderived changed the title lzham: Add 1.0.0 lzham: Add cci.20220103 Dec 20, 2022
@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline

All green in build 22 (3048124ab2529c6f8cafebb5245a6a350b537b46):

  • lzham/cci.20220103@:
    All packages built successfully! (All logs)

Copy link
Contributor

@prince-chrismc prince-chrismc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is really good, I dont see any blockers. i'd say we can save the smaller fine tuning (if any) for the next PR :)

@conan-center-bot conan-center-bot merged commit 43736ec into conan-io:master Jan 8, 2023
AbrilRBS pushed a commit to AbrilRBS/conan-center-index that referenced this pull request Jan 16, 2023
* lzham: Add 1.0.0

* Respond to comments

* Fix lint error
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[request] LZHAM/1.0
5 participants